package com.b511.swpu.cementbackend.service;

import com.b511.swpu.cementbackend.dto.input.CasingCompareInputDto;
import com.b511.swpu.cementbackend.dto.input.SqlDto;
import com.b511.swpu.cementbackend.dto.output.CasingCompareOutDto;
import com.b511.swpu.cementbackend.dto.input.WorkQueryDto;
import com.b511.swpu.cementbackend.util.R;
import org.springframework.data.domain.PageRequest;
import org.springframework.web.multipart.MultipartFile;
import net.sf.json.JSONObject;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;

public interface DataQueryService {
    R getWorkByCondition(WorkQueryDto workQueryDto,  PageRequest pageRequest) throws Exception;

    R filePreview(String fileName,HttpServletResponse response);

    R getWellFile(String wellName);

    // 通过井名查询
    R getWorkBaseInfo(String wellName);

    // 通过井名查询返回该井的全部套管
    R getCasingsData(String wellName);

    R wellBrowse(HttpServletRequest request);

    R wellInfoDetail(String cm_WorkBaseInfo_ID);

    // 套管对比
    R getCasingCompare(CasingCompareInputDto compareInDto);

    R getCompareTree();

    R getCompareTreeCasingSize();

    R getTreeByCompany(String company);

    R upload(MultipartFile[] multipartFiles,String wellName);

    R wellDocTree(String company);

    R createNewFile(String fileName);

    R deleteFile(String filePath);

    R loginCompany(HttpServletRequest request);

    R execQuery(SqlDto sqlDto) throws Exception;

    R execUpdate(SqlDto sqlDto) throws Exception;
}
